Use custom attribute to store blockquote depth on iOS #564
+26
−37
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Details
This PR removes
_blockquoteRangesAndLevels
inRCTMarkdownUtils
in favor of storing the blockquote depth asNSNumber
under custom attribute namedRCTLiveMarkdownBlockquoteDepth
.This removes cohesion between
_blockquoteRangesAndLevels
andapplyRangeToAttributedString:
which I plan to move to a separate class calledMarkdownFormatter
in an upcoming PR.It also simplifies the implementation of
MarkdownLayoutManager
where now we can use[textStorage attribute:atIndex:effectiveRange:];
to check if given range is a blockquote and determine its depth without custom algorithms.Partially applies #520.
Related Issues
GH_LINK
Manual Tests
Linked PRs